package com.ewzj.bigdata.mvp.model

import com.ewzj.bigdata.app.config.netmodel.CommonCache
import com.ewzj.bigdata.app.config.netmodel.CommonService
import com.ewzj.bigdata.app.extensions.json2Body
import com.ewzj.bigdata.mvp.contract.CitySelectorActivityContract
import com.ewzj.bigdata.mvp.contract.DecorateContract
import com.ewzj.bigdata.mvp.contract.ScanRecordActivityContract
import com.ewzj.bigdata.mvp.model.reqbean.*
import com.ewzj.bigdata.mvp.model.rspbean.*
import com.google.gson.Gson
import com.jess.arms.integration.IRepositoryManager
import com.jess.arms.mvp.BaseModel
import io.reactivex.Observable
import io.rx_cache2.DynamicKey
import io.rx_cache2.EvictDynamicKey
import javax.inject.Inject

/**
 * author:zhangjing
 * 作用:
 * return:
 */
class ScanRecordActivityModel @Inject constructor(val mGson:Gson, repositoryManager: IRepositoryManager) :BaseModel(repositoryManager),ScanRecordActivityContract.Model{
    val service=repositoryManager.obtainRetrofitService(CommonService::class.java)
    val cache=repositoryManager.obtainCacheService(CommonCache::class.java)

    override fun loadRecentScan(reqsearchBean: ReqsearchBean): Observable<BaseData<BaseListData<CollectionBean>>> {
        return service.recentScan(json2Body(mGson.toJson(reqsearchBean)))
    }

    override fun delRecentScan(reqNormalCollect: ReqNormalCollect): Observable<BaseData<Any>> {
       return service.doCollect(json2Body(mGson.toJson(reqNormalCollect)))
    }


}